home *** CD-ROM | disk | FTP | other *** search
/ Resource for Source: C/C++ / Resource for Source - C-C++.iso / codelib3 / v_03_06 / 3n06057a < prev    next >
Encoding:
Text File  |  1995-11-01  |  444 b   |  23 lines

  1.  
  2. Listing 4
  3.  
  4. /*
  5.  * arraycmp.h - a general-purpose array comparer in C++
  6.  * using compile-time genericity
  7.  */
  8. #define arraycmp_declare(T) \
  9.     int arraycmp(const T a1[], const T a2[], size_t n)
  10.  
  11. #define arraycmp_implement(T) \
  12.     arraycmp_declare(T) \
  13.     { \
  14.     size_t i; \
  15.     int cmp; \
  16. \
  17.     for (i = 0; i < n; ++i) \
  18.         if ((cmp = T ## cf(a1[i], a2[i])) != 0) \
  19.             return cmp; \
  20.     return 0; \
  21.     }
  22.  
  23.